package com.ruoyi.TimedTask.mapper;

import com.ruoyi.TimedTask.domain.TimedTask;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;

import java.util.List;

/**
 * 定时任务Mapper接口
 *
 * @author zjh
 * @date 2022-04-30
 */
@Mapper
public interface TimedTaskMapper
{
    /**
     * 查询定时任务
     *
     * @param taskId 定时任务ID
     * @return 定时任务
     */
    public TimedTask selectTimedTaskById(Long taskId);

    /**
     * 查询定时任务列表
     *
     * @param timedTask 定时任务
     * @return 定时任务集合
     */
    public List<TimedTask> selectTimedTaskList(TimedTask timedTask);


    /**
     * 查询定时任务列表
     *
     *
     * @return 定时任务集合
     */
    public List<TimedTask> selectTimedTaskByAllId();

    /**
     * 新增定时任务
     *
     * @param timedTask 定时任务
     * @return 结果
     */
    public int insertTimedTask(TimedTask timedTask);

    /**
     * 批量插入定时任务
     *
     * @param timedTasks 需要插入的数据集合
     * @return 结果
     */
    public int insertTimedTasks(@Param("TimedTaskList") List<TimedTask> timedTasks);

    /**
     * 修改定时任务
     *
     * @param timedTask 定时任务
     * @return 结果
     */
    public int updateTimedTask(TimedTask timedTask);

    /**
     * 删除定时任务
     *
     * @param taskId 定时任务ID
     * @return 结果
     */
    public int deleteTimedTaskById(Long taskId);

    /**
     * 批量删除定时任务
     *
     * @param taskIds 需要删除的数据ID
     * @return 结果
     */
    public int deleteTimedTaskByIds(String[] taskIds);
}
